約 3,454,448 件
https://w.atwiki.jp/johzue/pages/28.html
Solaris10でのMysql利用までの簡単な流れ Solaris10にはMysqlはデフォルトでインストールされているのでそのまま利用ので、 必要なインストール項目はない。 まずは、ユーザとグループの作成 groupadd mysql useradd -g mysql mysql chgrp -R mysql /var/mysql chmod -R 770 /var/mysql installf SUNWmysqlr /var/mysql d 770 root mysql データベースを初期化 /usr/sfw/bin/mysql_install_db cp /usr/sfw/share/mysql/my-medium.cnf /var/mysql/my.cnf マニフェストのダウンロード /usr/sfw/bin/wget http //cuddletech.com/opensolaris/sfm/mysql.xml 今ダウンロードしたマニフェストをSMFに登録 mv /mysql.xm. /var/svc/manifest/network/ svccfg import /var/svc/manifest/network/mysql.xml svcadm enable mysql 確認 svcs mysql これでOK パクリ元 http //japan.zdnet.com/sp/feature/06sp0240/story/0,2000090657,20339691-3,00.htm
https://w.atwiki.jp/kagiwada/pages/43.html
postgresql8.1.9 *注意postgresqlのインスールは最後にする。 解凍 tar xzvf postgresql-8.1.9.tar.gz configure ./configure --with-tcl --with-tclconfig=/usr/lib --with-perl --with-pam configure error header file tcl.h is required for Tcl # /usr/sbin/useradd pgsql # /usr/sbin/groupadd pgqsl # /usr/sbin/usermod -gpgsql pgsql tk + tcl 8.5.4 インストール wget http //nchc.dl.sourceforge.net/sourceforge/tcl/tk8.5.4-src.tar.gz ./configure make make install wget http //nchc.dl.sourceforge.net/sourceforge/tcl/tcl8.5.4-src.tar.gz ./configure make make install もう一度。。。 ./configure --with-tcl --with-tclconfig=/usr/lib --with-perl --with-pam make make install readline5.1インストール wget ftp //ftp.cwru.edu/pub/bash/readline-5.1.tar.gz tar xzvf readline-5.1.tar.gz パッチ wget ftp //ftp.cwru.edu/pub/bash/readline-5.1-patches/readline51-001 wget ftp //ftp.cwru.edu/pub/bash/readline-5.1-patches/readline51-002 wget ftp //ftp.cwru.edu/pub/bash/readline-5.1-patches/readline51-003 wget ftp //ftp.cwru.edu/pub/bash/readline-5.1-patches/readline51-004 パッチの当て方。 cd でreadline-5.1.tar.gzのディレクトリにいるとする。 cd readline-5.1という事。つまり解凍済みの状態。 readline-5.1に移り。 readline51-001、readline51-002、readline51-003、readline51-004は、readline-5.1. tar.gzのディレクトリにあるとする。 patch -p0 ../readline51-001 patch -p0 ../readline51-002 patch -p0 ../readline51-003 patch -p0 ../readline51-004 ./configure --enable-multibute make make install postgresql 利用ユーザーの .inputrc ファイルに追記 readline が日本語を扱えるように、次の3行をユーザ(今回は、PostgreSQL を使用す るユーザ)のホームディレクトリの下の、.inputrc ファイルに書いておく必要があり ます。 もし、.inputrc ファイルがなければ、作成して、次の4行を書いておきましょう。 set convert-meta off set meta-flag on set input-meta on set output-meta on Ncurses5.5 wget ftp //ftp.gnu.org/pub/gnu/ncurses/ncurses-5.5.tar.gz tar xzvf ncurses-5.5.tar.gz cd ./ncurses-5.5 ./configure --with-shared --with-normal make make install zlib-1.2.3 wget http //www.zlib.net/zlib-1.2.3.tar.gz tar xzvf zlib-1.2.3.tar.gz cd ./zlib-1.2.3 ./configure -shared make make install DB作成 パーミッション [root@localhost postgresql-8.1.9]# ls -l /usr/local/pgsql/ 合計 28 drwxr-xr-x 2 root root 4096 9月 4 19 00 bin drwxr-xr-x 2 pgsql pgsql 4096 9月 4 19 01 data drwxr-xr-x 3 root root 4096 9月 4 19 00 doc drwxr-xr-x 6 root root 4096 9月 4 19 00 include drwxr-xr-x 3 root root 4096 9月 4 19 00 lib drwxr-xr-x 4 root root 4096 9月 4 19 00 man drwxr-xr-x 3 root root 4096 9月 4 19 00 share データディレクトリー作成 mkdir /usr/local/pgsql/data パーミッション変更 chown pgsql.pgsql /usr/local/pgsql/data PATHを登録 cd /home/pgsql vi .bash_profile 以下を追記 #export PATH=$PATH /usr/local/pgsql/bin #export MANPATH=$MANPATH /usr/local/pgsql/man DB初期化(作成) /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data DBのスタート方法 /usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l /val/log/pgsql.log /usr/local/pgsql/bin/postmaster -i -S -D /usr/local/pgsql/data -l /val/log/pgsql.log DBのSTOP方法 /usr/local/pgsql/bin/pg_ctl -m i stop -D /usr/local/pgsql/data -mはモード選択 他にfとsがある。詳しくはヘルプ見て。 データベースの一覧取得 su $UserName -c "/usr/local/pgsql/bin/psql -l" ↑ここにはpostgreのUserが入ります。 データベースのバックアップ(ダンプ) コマンド例: /usr/local/pgsql/bin/pg_dump -h localhost -d 【DBNAME】 -U 【USERNAME】 -F c -f 【BKFILE】 レストア /usr/local/pgsql/bin/pg_restore -h localhost -d 【DBNAME】 【BKFILE】 このコマンドを使用する利点 ・バックアップファイルがひとつで管理者しやすい。 ・中身がSQL文なので、別の環境への移行がらくである。 最適化をする。 コマンド: /usr/local/pgsql/bin/vacuumdb Usage vacuumdb [OPTION]... [DBNAME] データベース作成 su $UserName -c "/usr/local/pgsql/bin/createdb -E EUC_JP BDNAME" ↑ここにはpostgreのUserが入ります。 データベース削除 su $UserName -c "/usr/local/pgsql/bin/dropdb BDNAME" アクセス数| - | 名前 コメント
https://w.atwiki.jp/shohei0504/pages/6.html
MPIプログラミングを実際にC言語で実装してみた そもそもMPIとは?? Message Passing Interfaceの略。並列計算をする際、それぞれのプロセスがお互いに通信をするためのAPI。ソケットプログラムの段階から、この機能を実装するのは大変であるため、ライブラリとして提供されている。もちろん、MPIはインターフェースの名称であり、その実装は様々。今回はMPICH1で実装してみた。他にはLAMとかいろいろあるみたい。MPICH2はもあるらしく、これはMPICH1の機能プラスアルファみたいな感じみたい。追加された機能は、いろいろあるみたいだけど、知ってるところだと、走らせるプロセス数を実行時に決定できるとかなんとか。とにかく、そのようなライブラリでして、今回はごく簡単なプログラムでそのライブラリを実装してみよーっと思ったわけです。 どんなプログラムを書いたか? ごくごく簡単なプログラムだが、ランダム生成されたM×N行列と、長さNの列ベクトルの積をMPIを活用して解くプログラム。コマンドは以下のようにする。 ~$ ~/mpirun -np 4 -machinefile ./mf ./mpi_matrix 10 12 これは、プロセス数が4で、カレントディレクトにあるmfってmachinefileを読み込み、実行可能プログラム mpi_matrixを、10と12という引数を持たせて実行する、とゆー意味。 この場合、10が行の数、12が列の数、となる。 実際に使ったprimitiveとその意味 MPI_Init(int *argc, char ***argv)初期化。まずこいつを呼ぶ。コマンドから引数を読み取るのは、こいつを呼んでからあとのほうがよい。ルートプロセスは自分でコマンド入れてるから、ちゃんと変数にコマンドから値が入るだろうけど、他のプロセスにはそれじゃ入らん。それで少しハマった。よく考えれば当たり前だけど。 MPI_Comm_size(MPI_Comm comm, int *size)指定するコミュニケ-タ(プロセスがお互いに通信できるグループのこと?デフォルトだとMPI_COMM_WORLD。今回はこれしか使ってない)における、総プロセス数を知ることができる。 MPI_Comm_rank(MPI_Comm comm, int *rank)そのコミュニケータにおける自分のランクを知ることができる。 MPI_Scatter(void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvbuf, MPI_Datatype recvtype, int root, MPI_Comm comm)配列のデータを各プロセスにばらまく。この関数では、それぞれのプロセスに決まった量のデータした撒けない。 MPI_Scatterv(void *sendbuf, int *sendcounts, int *displs, MPI_Datatype sendtype, void *recvbuf, int recvcnt, MPI_Datatype recvtype, int root, MPI_Comm comm)Scatterの拡張版。各プロセスに対して異なるデータ数を送ることができる。そのために、sendcountsやdisplsとかゆーint型の配列を自分で作る必要あり。 MPI_Gatherv(void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype, int root, MPI_Comm comm)Scattervの逆バージョン。 MPI_Finalize()MPIの終了時に必ず読む関数。 MPI_Send()とかMPI_Recv()は、基本的な関数だけど、今回は使ってません。 やってみた感想 簡単なプログラムだけど、やると意外に時間がかかってしまった。。。反省点は、やっぱりいきなりMPIを実装するのではなく、Sequentialなものを書いてから、そこで用意した関数をバリバリ適用していくってのがラクだな、と思った。昔から気になっていた、MPIだけど、今回実装してみてなんとなく雰囲気が分かりよかった。本場のMPIプログラミングはことはだいぶ複雑なんだろうけど -
https://w.atwiki.jp/hacklink/pages/22.html
.hack//ROOTS ユニゾンPC .hack//ROOTS ユニゾンPC志乃 タビー 志乃 CV 名塚佳織 ジョブ ハーヴェスト ユニゾン名 Twilight Shine 加入シナリオ サブシナリオ〝大聖堂の出来事〟クリア リンクジャッジ 制限時間以内に敵を殲滅せよ スキル/アビリティ JOBRANK 1:最大SPアップJOBRANK 2:攻撃力アップJOBRANK 3:リプパラム/アニマル+JOBRANK 4:オリプス/最大SPアップ2JOBRANK 5:攻撃力アップ2/SPリカバリーXth 1:オルアンゾット/想いを盾にXth 2:ファリプス/最大SPアップ3Xth 3:オルザンローム/SPリカバリー2Xth 4:攻撃力アップ3Xth 5:SPリカバリー3 クロスレンゲキ 追加入力1:追加入力2:追加入力3:追加入力4: ☆要求ウイルスコア フォーム RANK1 RANK2 RANK3 RANK4 RANK5 ノーマル - B*18/C*8 E*20/F*10 H*20/I*10 K*25/L*10 Xth N*30/O*10 Q*32/R*10 T*35/U*10 Q*37/X*10 Y*42/Z*10 タビー CV 豊口めぐみ ジョブ グラップラー ユニゾン名 にくきゅうマニア 加入シナリオ メインシナリオ 第五話クリア リンクジャッジ スキル/アビリティ JOBRANK 1:最大HPアップJOBRANK 2:防御力アップJOBRANK 3:QブレイクJOBRANK 4:最大HPアップ2JOBRANK 5:防御力アップ2Xth 1:双極・明王烈破拳/最大HPアップ3Xth 2:忍耐の盾Xth 3:防御力アップ3Xth 4:最大HPアップ4Xth 5:防御力アップ4/忍耐の盾2 クロスレンゲキ 追加入力1:クリティカル小追加入力2:HPカプセル+1追加入力3:追加入力4: ☆要求ウイルスコア フォーム RANK1 RANK2 RANK3 RANK4 RANK5 ノーマル Xth
https://w.atwiki.jp/msi_wind/pages/34.html
カスタマイズに関する情報 BIOSアップデート Bluetooth Stack変更 Mac OS X Snow Leopard 10.6 Ubuntu トリプルブート メモリ増設 壁紙 熱処理改善 ; この手順の前提 U100で動作したSLをTimeMachineにてバックアップしている バックアップしたSLにはNetBookInstallerをコピーしてある SL、Win7、Ubuntu9.10のトリプルブート環境を構築する この手順を実行した環境 U100 Vogue (RAM 2GB、HD 320GB) 外付け光学ドライブ (BUFFALOのBDドライブを使用) この手順で使ったインストールメディア (a) NetBookBootMakerで作成したSDカード (b) Ubuntu NetBook Remix 9.10を焼いたメディア [準備] (1) (b)で起動後「日本語」を選び「Ubuntuをインストール(I)」を指定 (2) 「ようこそ」の画面になったら Ctrl+Alt+F2 キーで2番目の端末へ移動後、下記を順に実行 sudo dd if=/dev/zero of=/dev/sda bs=512 count=1 sudo reboot [SLインストール] (1) (a)でU100を起動。 (2) SLリテールを起動ディスクとして起動 (3) ディスクユーティリティで内蔵HDのパーティションを設定(初期化) FAT(40GB) ubuntu用(root) FAT(90GB) Window用 HFS(4GB) ubuntu用(swap) HFS(残り) SL用 (4) Time Machineのバックアップよりシステムを復元 (5) 復元終了後、(1)と同様に(a)でU100を起動 (6) SLを復元したHFSを起動ディスクとして起動 (7) 起動後、NetbookInstallerを起動し、Chameleonのみインストール これで起動時にChameleonによるブート画面が表示され、SLで起動可能となる。 [Ubuntuインストール] (1) (b)で起動後、「日本語」を選び「Ubuntuをインストール(I)」を指定 (2) 「ようこそ」の画面になったら Ctrl+Alt+F2 キーで2番目の端末へ移動後、下記を順に実行 sudo fdisk /dev/sda t 2 83 w sudo mke2fs -j /dev/sda2 y (3) Alt+F7 キーで7番目の端末へ移動後「進む(F)」→「進む(F)」→「進む(F)」 (4) 「どこに Ubuntu 9.10 をインストールしますか?」→「手動でパーティションを設定する」→「進む(F)」 (5) 「/dev/sda2 ext3 ...」の行を選択し「パーティションを編集」 (6) 「利用方法 」→「ext3 ...」、「パーティションの初期化 」はそのまま、「マウントポイント 」→「/」→「OK」 (7) 「進む(F)」→「続ける」→「続ける」 (8) 「あなたは誰ですか?」を設定後「進む(F)」→「インストール」 (9) 「インストールが完了しました」の画面になったら Ctrl+Alt+F2 キーで2番目の端末へ移動後、下記を実行 sudo mkswap /dev/sda4 sudo vi /etc/fstab G o /dev/sda4 none swap sw 0 0 [Esc] wq sudo reboot これでGRUBのブート画面が表示され、ubuntuが起動可能となる。 このブート画面からMacOSXを起動することはできない。 [SLとubuntuのデュアルブート環境を構築] (1) ubuntuを起動する (2) ターミナルを起動する (3) ubuntuのPBRへGRUBをインストールする sudo grub-setup -f /dev/sda2 (4) (a)でU100を起動。 (5) SLリテールを起動ディスクとして起動 (6) NetbookInstallerを起動し、Chameleonのみインストール (7) ターミナルで以下を実行 sudo fdisk -e /dev/disk0 flag 4 write y exit (printコマンドにより現状のアクティブパーティションの確認が可能) これで 電源投入後、Chameleonのブート画面を表示。 → 放置しておくとSL起動 → 何かキーを押すと起動ディスク選択モードに遷移 SL選択でSL起動、Linux選択でGRUB画面へ遷移 となる [Win7インストール] Wikiの「Snow Leopard 10.6」記載の説明に従ってインストールする。 Windows用として用意したパーティションへインストールできない場合がある。(「gptのパーティションの形式ではありません」というエラーが出る) これはubuntuで何らかの操作を行った時にパーティションの情報がおかしくなってしまうからと思われる。 こうなった場合、現状の解決策は「最初からやり直し」のみである。
https://w.atwiki.jp/hiropknot/pages/78.html
第1章:データベース管理者のタスク データベースシステムの構築にかかわる作業 ・Oracleソフトウェアのインストール ・データベースの作成 ・データベースおよびソフトウェアのアップグレード 日々の運用管理にかかわる作業 ・Oracleインスタンスの起動および停止 ・データベースの記憶域構造の管理 ・ユーザおよびセキュリティの管理 ・スキーマ、オブジェクト(表、索引、ビューなど)の管理 ・バックアップの計画と実行 ・データベースの積極的な監視と障害予防措置 ・パフォーマンスの監視およびチューニング トラブルシューティング ・障害発生時のリカバリの実行 ・データベースの監視によって判明した問題への修正処置の実行 ・診断およびOracleサポートサービスへのエラー報告 第2章:OracleソフトウェアのインストールおよびOracleデータベースの作成 共通の前提条件チェック項目 カテゴリ チェック項目 ディスク領域 ・スワップ領域:1GB以上 ・一時領域(/tmp):400MB以上 ・Oracleソフトウェア用:1.5GB以上 ・事前構成済みデータベース用:1GB以上 メモリ ・物理メモリ:1GB以上 OUI(Oradcle Universal Installer)の機能 ・新しいOracleソフトウェアのインストール ・インストールされているOracleソフトウェアの表示 ・私用しないOracleソフトウェアの削除 ・インストールプロセス中のオンラインヘルプの参照 ・インストール前の前提条件のチェック 主な環境変数 環境変数 説明 ORACLE_BASE Oracleディレクトリ構造のトップディレクトリ ORACLE_HOME Oracleソフトウェアを格納するディレクトリOracleソフトウェアをインストールするたびに、新しくOracleホームディレクトリを指定する必要がある。デフォルトはORACE_BASEディレクトリのサブディレクトリとなる。 ORACLE_SID システム識別子(インスタンス名)、8文字以下の英数字 LD_LIBRARY_PATH 共有オブジェクトライブラリを検索するパス Oracleインベントリディレクトリ 最初にソフトウェアをインストールするときに設定する。 インストールしたOracle製品の情報などを保持するためのディレクトリ。 既存のソフトウェアへのパッチ適用、アップグレード、ソフトウェアの削除などの時にOUIが使用する。 Linuxへのインストール rootユーザでログインし、下記2つのシェルを実行する。 orainstRoot.sh インベントリポインタファイル(/etc/oraInst.loc)を作成する。 root.sh oratabファイル(/etc/oratab)の作成とOracle用の環境変数を変更するスクリプトのコピーを行う。 DBCA(Detabase Configration Assistant) テンプレートについて テンプレートの実態は、データベースの作成に必要な以下の情報が含まれているXMLファイル。 ・データベースオプション ・初期化パラメータ ・記憶属性(データファイル、表領域、制御ファイル、オンラインREDOログの属性) など 格納先:<$ORACLE_HOME/assistants/dbca/templates> データベース作成時に指定する記憶域オプション ・ファイルシステム(デフォルト) ・自動ストレージ管理(ASM) ・RAWデバイス 第3章:Enterprise Managerを使用したデータベース管理 Enterprise Managerとは Oracleインスタンスやデータベースを管理するためのツール。 「Database Control(1つのDBを管理)」と「Grid Control(複数のDBを管理」がある。 分類 管理作業 データベース管理タスク ・スキーマオブジェクト(表、ビュー、索引など)の作成 ・ユーザーのセキュリティ管理 ・データベースのメモリおよび記憶域の管理 ・データベースのバックアップおよびリカバリ ・データのインポートおよびエクスポート ・インスタンスの起動、停止 情報の表示 ・データベースのパフォーマンスおよびステータス情報の表示 ※データベースの新規作成・削除はできない。 デフォルトでEnterprise Managerへのログインが可能なユーザ SYS / SYSTEM / SYSMAN 設定の種類と設定できる内容 管理 ・管理者 ・通知方法 ・パッチ適用方法 ・ブラックアウト 環境 ・一般 ・優先接続情報 ・通知(ルール、スケジュール) SQL Plusとは データベースを管理するための主要なSQLコマンドベースツール。 起動方法 sqlplus /nologconnect account/password 第4章:Oracleネットワーク環境の構成 Oracle Net Manager ネットワーク機能を提供するOracle Netのネットワークを構成するツール。 起動方法 コマンド 「netmgr」 Windows 「スタート」>「プログラム」>「Oracle - home-name」>「Configration and Migration Tools」>「Net Manager」 第5章:Oracleインスタンスの管理 初期化パラメータファイル インスタンス起動時に読み込まれるファイル。 データベースバッファキャッシュや共有プールなどSGAのメモリ領域のサイズ変更や、必要なバックグラウンドプロセスの追加起動など、インスタンスの動作に影響を与えるパラメータが書き込まれている。 初期化パラメータファイルの種類 サーバーパラメータファイル(SPFILE) Oracleデータベースサーバによって読み取りと書き込みが可能なバイナリファイル。 インスタンス稼働中に動的に変更できるパラメータの値が格納できる(手動変更は不可)。 Enterprise Managerで使用することができる。 テキスト初期化パラメータファイル(PFILE) テキストファイル。 Oracleデータベースサーバによって読み取りは可能だが、書き込みは行えない。 パラメータ変更後は、インスタンスを再起動する必要がある。 バックグラウンドプロセス インスタンスを起動すると自動的に起動するプロセス群。 Oracleシステムがスムーズに動くように全体管理を行う。 SMONシステムモニター 障害になどによりインスタンスを再起動した際に、インスタンスリカバリを実行する。 PMONプロセスモニター ユーザプロセスの障害時に、使用していたリソースを解放し、クリーンアップを行う。 DBWnデータベースライター データベースバッファキャッシュ上で変更されたデータをデータファイルに書き込む。 CKPTチェックポイント DBWnによりデータベースバッファ内のデータがデータファイルに書き込むイベントのことを「チェックポイント」という。CKPTはDBWnを呼び出し、さらにメモリとディスクの同期情報を制御ファイルに書き込む。 LGWRログライター REDOエントリ(変更履歴情報)をREDOログファイルに書き込む。 ARCnアーカイバ REDOログファイルをアーカイブログファイルとしてコピーする。必須のバックグラウンドプロセスではない。 データベース作成時に自動作成される「管理者アカウント」 SYS データベース管理者アカウント SYSTEM データベース管理者アカウント SYSMAN Enterprise Managerでのデータベース操作を実行するためのユーザアカウント DBSNMP Enterprise Managerの管理エージェントが使用するユーザアカウント メモリ管理の種類と特徴 自動メモリ管理(推奨) 特徴 データベースサーバによりSGAとインスタンスPGAが自動チューニングされる。 データベース管理者は、インスタンスで使用する合計メモリサイズを指定する。 設定するパラメータ ・ターゲットメモリサイズ初期化パラメータ(MEMORY_TARGET) ・最大メモリサイズ初期化パラメータ(MEMORY_MAX_TARGET) ←オプション 自動共有メモリ管理+自動PGAメモリ管理 特徴 自動メモリ管理を無効化すると、暗黙的に自動共有メモリ管理+自動PGAメモリ管理となる。 データベースサーバによりSGAのサイズとここのプロセスのPGA自動チューニングされる。 データベース管理者は、SGAとPGAのターゲットサイズと最大サイズを指定する。 設定するパラメータ ・SGAターゲットサイズパラメータ(SGA_TARGET) ・SGAの最大サイズ(SGA_MAX_SIZE) ・PGAターゲットサイズ初期化パラメータ(PGA_AGGREGATE_TARGET) ・PGAの最大サイズ(PGA_MAX_MEM) 手動共有メモリ管理+自動PGAメモリ管理 特徴 自動共有メモリ管理を無効化すると、暗黙的に手動共有メモリ管理となる。 データベース管理者は、SGAの各コンポーネントのサイズとPGAのターゲットサイズを指定する。 第6章:データベース記憶域構造の管理 データベース起動の流れ SHUTDOWN:停止中 ↓ ↓・初期化パラメータファイルの読み込み ↓ NOMOUNT:インスタンス起動(バックグラウンドプロセスと共有メモリが存在する状態) ↓ ↓・制御ファイルの読み込み ↓ MOUNT:データファイルなどにアクセスできる状態 ↓ ↓・データファイルのチェックやREDOログファイルのオープンなど ↓ OPEN:データ処理およびSQL受付ができる状態 ※初期化パラメータファイル、制御ファイル、データファイルに以上がある場合はデータベースは正常に起動しない。 第7章:ユーザーおよびセキュリティの管理 ユーザー属性 表領域の割り当て制限 ユーザーに使用が許可される表領域内の容量。ユーザーが使用可能な表領域ごとに指定する。 デフォルトではすべての表領域に対して「なし(表領域使用許可なし)」が設定されている。 割り当て制限を無制限にするには、「-1」を設定する。 この場合、USER_TS_QUOTASやDBA_TS_QUOTASビューのMAX_BYTES列、MAX_BLOCKS列の値は、-1になる。 データベース操作のための権限 管理権限 データベースの作成、インスタンスの起動・停止(およびデータベースの起動)、バックアップ・リカバリの実行を行うことができる特別な管理権限は下記の2つ。 この権限を持つユーザはデータベースがオープンされていない場合でも、インスタンスへのアクセスができる。 SYSDBA すべての権限を持つデータベース管理者用のシステム権限。 SYSOPER 基本的な運用タスクを実行するがユーザーのデータを表示する権限は持たないユーザ用のシステム権限。 特権ユーザの認証について DBAの認証には、下記2つの方式がある。 ・OS認証 ・パスワードファイル認証 ※セキュリティで保護されていないリモート接続では、パスワードファイル認証を推奨。 ※OS認証はパスワードファイル認証より優先される。 ロールとは 権限および他のロールの集合 ロールに付与できるものは、「システム権限」、「オブジェクト権限」、「他のロール」。 第8章:スキーマオブジェクトの管理 データベース作成処理の際に自動的に「SYS」と「SYSTEM」というスキーマが作成される。 SYS データディクショナリを構成するすべての実表およびビューが作成されるスキーマ。 SYSTEM 管理情報を格納するための追加の表やビュー、およびOracle製品のオプションやツールで使用される内部的な表やビューが作成されるスキーマ。 表の削除について 表を削除することにより実行される処理は次のとおり。 ・表の定義がデータディクショナリから削除される。 ・表のすべての行が削除される ・表に作成されたすべての索引は削除される。 ・表に関連する制約、トリガーも削除される。 ・表に作成したビュー、シノニムは削除されずに無効になる。 ※これらのデータは同じ表領域内のゴミ箱に格納される。そこから戻すことも可能。 索引について SQL文による明示的に作成される索引と、暗黙的に作成される索引がある。 「主キー制約(Primary)」と、「一意キー制約(UNIQUE)」を定義すると暗黙的に索引が作成される。 ビューについて 1つまたは複数の表やビューを基に作成する、仮想の表のこと。 データディクショナリ情報の更新は、Oracle Serverのみが行う。 DBA_* データベース内のすべてのオブジェクトに関する情報 ALL_* 自分がアクセスできるオブジェクトに関する情報 USER_* 自分が所有するオブジェクト(=自スキーマのオブジェクト)に関する情報 V$* 動的パフォーマンスビュー。自動更新される。データベースのパフォーマンスに関す情報 その他 セッションやロール、言語環境に関する情報 ストアドプログラムとは PL/SQLまたはJavaで記述されたプログラム。 アプリケーション開発者がOracleデータベース内に作成するスキーマオブジェクト。 共通で使用するプログラムを格納しておくと、任意のアプリケーションプログラムから呼び出して使用することができる。 作成できるストアドプログラムの種類 パッケージ パッケージ使用部。関連するプロシージャとファンクションおよびこれらのプロシージャとファンクションが使用するカーソルと変数をグループとしてまとめたもの。 パッケージ本体 パッケージに定義されたプロシージャとファンクションのコード。 プロシージャ 単一のタスクを実行するプログラム。 ファンクション 単一のタスクを実行するプログラム。呼び出しもとのプログラムに値を戻す必要がある。 トリガー 表、ビュー、イベントに関連付けられたプログラム。 第9章:バックアップおよびリカバリの実行 バックアップの種類 イメージコピー OSレベルでのデータファイル、制御ファイル、アーカイブREDOログファイルのコピー。 Enterprise Managerで作成すると、Recovery Managerリポジトリにイメージコピーが記録される。 バックアップセット Recovery Manager固有の形式。 1つ以上のバックアップピースという物理ファイルが含まれ、1つのバックアップピースに1つ以上のデータベースファイルのバックアップがRecovery Manager固有のコンパクトな形式で格納される。 データファイルの中でデータの格納に使用されたブロックのみがバックアップセットに含められる。 * クロスチェック ディスクやテープ内の物理的なバックアップの状況と、Recovery Managerリポジトリ内にあるバックアップレコードが一致しているかを確認し、バックアップの現行のステータスを反映すること。 ファイルヘッダに破損がない場合は「AVAILABLE(使用可)」となる。 破損・欠落、またはバックアップが指定した場所にない場合は「EXPIRED(期限切れ)」となる。 フラッシュバック機能 フラッシュバック機能を使用すると、誤ってデータを削除や変更したときに、簡単にリカバリすることができる。 フラッシュバック表 表のデータを過去のある時点に戻す機能。 過去データの検索のためにUNDOデータを使用する。 表のフラッシュバックには、行移動(※その他へ)が有効でなくてはならない。 フラッシュバックドロップ 削除された表をゴミ箱から戻す機能。 表だけでなく、表に関連する索引やトリガーも元に戻す。 フラッシュバックに必要な権限 ・FLASHBACKオブジェクト権限 or FLASHBACK ANY TABLE権限 ・その表に対するSELECT、INSERT、DELETE、ALTERオブジェクト権限 バックアップポリシーの構成 ・各バックアップとデータベースの構成変更ごとに、制御ファイルおよびSPFILEを自動的にバックアップ ・バックアップ済みの、読み取り専用およびオフラインのデータファイルなどの未変更ファイルをスキップ ・増分バックアップ高速化のためのブロック変更トラッキングを有効化 第10章:データベースの監視およびアドバイザの使用 AWR(Automatic Workroad Repository:自動ワークロードリポジトリ) データベースの状態とパフォーマンス情報を格納したデータ。SYSAUX表領域に存在する。 定期的に取得した情報のことを「AWRスナップショット」と呼ぶ。 アドバイザの種類 ADDM(Automatic Database Diagnostics Monitor:自動データベース診断モニター) データベース全体についてのアドバイザ SQLアドバイザ SQLに関するアドバイザ SQLチューニングアドバイザ 1つ以上のSQL文を分析して、パフォーマンスを改善するための推奨事項を提示する。ソースには、「トップアクティビティ」、「履歴SQL」、「SQLチューニングセット」がある。 SQLアクセスアドバイザ 特定のSQLワークロードに合わせてスキーマをチューニングする。例:特定のワークロードに対する索引の作成、削除の推奨事項の提供。 メモリアドバイザ メモリの設定に関するアドバイザ。 メモリ管理モードに応じて、様々なメモリアドバイザを使用できる。 メモリアドバイザ Oracleインスタンスに割り当てるターゲットメモリ容量の設定に関するアドバイスを提示する。自動メモリ管理が有効な場合に使用できる。 SGAアドバイザ SGAのターゲットサイズの構成に関するアドバイスを提示する。自動共有メモリ管理が有効な場合に使用できる。 PGAアドバイザ インスタンスPGAのターゲットサイズの構成に関するアドバイスを提示する。自動共有メモリ管理、手動共有メモリ管理が有効な場合に使用できる。 共有プールアドバイザ 共有プールのサイズ設定に関するアドバイスを提示する。手動共有メモリ管理が有効な場合に使用できる。 バッファキャッシュアドバイザ バッファキャッシュのサイズ設定に関するアドバイスを提示する。手動共有メモリ管理が有効な場合に使用できる。 その他のアドバイザ セグメントアドバイザ 表領域の空き領域の再利用に関するアドバイスを行う。セグメント内の領域の断片化のレベルに基づいて、そのセグメントの縮小操作が必要かどうかのアドバイスを提示する。このアドバイザは推奨するだけで実際のデータベースオブジェクトの縮小化は行わない。 UNDOアドバイザ システムアクティビティの統計情報や、最も時間がかかる問い合わせの時間、UNDO保存期間の低閾値(最小UNDO保存期間)に基づいて、UNDO表領域のサイズ設定に役立つアドバイスを提示する。 アラート 特定のメトリック(測定基準)が閾値を超えた場合に生成される通知。 「警告閾値」と「クリティカル閾値」を設定できる。 領域不足などのアラートは、問題の原因が解決すると自動的に消去される。 他のアラートは、システム管理者による肯定応答が必要。 その他 オブジェクトの再編成 データベースのパフォーマンスは、時間の経過とともに行連鎖や以降と索引の停滞などによって影響を受ける可能性が出てくる。 そのような場合にオブジェクトの再編成を実施し、表の構造を論理的または物理的に変更し、下記のような効果を得ることができる。 ・問い合わせまたはDMLのパフォーマンス改善 ・アプリケーションの変更に対応する ・記憶域を管理する ただしOracleでは、SYSTEM、SYSAUX、一時(TEMP)、UNDO、オフラインまたは読み取り専用の表領域の再編成はサポートしていない。 行移動 データ更新時に発生する現象。 データレコードを更新するときに、ブロック内の空き領域を使用してもデータブロック内に収まらず、実データの行断片(レコードピース)をすべて別のデータブロックへ引っ越している状態。 Enterprise Managerからデータベースへのログインをしたときの接続モードは以下。 ・NORMAL ・SYSDBA ・SYSOPER 初期化パラメータ UNDO_RETENTION UNDO保存期間の下限値(秒)を指定する。 SGA_MAX_SIZE インスタンスの存続期間を通してのSGAの最大サイズを指定する。※動的変更不可) LOG_BUFFER REDOエントリをREDOログファイルに書き込むときに使用されるメモリ容量をバイト単位で指定する。※動的変更不可 DB_BLOCK_SIZE データベースの標準のブロックサイズを指定する。 箇条書き ・データベースのアーカイブログモードの変更には再起動が必要。
https://w.atwiki.jp/n-3104/pages/29.html
CVSサーバ構築インストール リポジトリの構築 xinetdへの登録 ユーザの登録 参考 EclipseからCVSサーバに接続Webアプリの開発 EclipseとCVSサーバの対応状況 CVSサーバ構築 インストール CDの2枚目に入っているrpmファイルをインストールするだけ。 # rpm -ivh /mnt/cdrom/RedHat/RPMS/cvs-1.11.2-10.i386.rpm リポジトリの構築 リポジトリ用のディレクトリを作って初期化するだけ。今回は /var/cvs/A と /var/cvs/B という2つのリポジトリを作ることにした。 # mkdir /var/cvs/A /var/cvs/B # cvs -d /var/cvs/A init # cvs -d /var/cvs/B init cvs init はCVSリポジトリとして必要なCVSROOTディレクトリや各種ファイルを生成してくれるだけ。どこか別のディレクトリに情報を書き込んだりはしていない。よってバックアップをしたければ、リポジトリのディレクトリを丸ごとコピーしてtarで固めておいたりすればよい。 xinetdへの登録 cvsはxinetdを使って公開する場合はxinetd用の設定ファイルを作成する必要がある。 # vi /etc/xinetd.d/cvspserver /etc/xinetd.d/cvspserverの中身 # cvspserver service cvspserver { socket_type = stream wait = no protocol = tcp user = root server = /usr/bin/cvs server_args =-f --allow-root=/var/cvs/A --allow-root=/var/cvs/B pserver disable = no } 設定ファイルを作成したら、xinetdを再起動する。 # /etc/init.d/xinetd restart ユーザの登録 CVS用のユーザはLinux上のユーザが利用されるが、それとは別にCVS専用のユーザを作ることも出来る。この場合は、CVS専用のユーザをLinuxのユーザに割り当てるという考え方になる。よって、まずはLinux上にCVS用のユーザを作成し、このユーザにリポジトリディレクトリへの書き込み権限を付与する必要がある。 # useradd cvs # cd /var/cvs # chown -R root cvs A B # chmod 775 A B CVS用のユーザを作るには、CVSROOTディレクトリの下に"passwd"という名前のファイルを作ればよい。書式は以下の通りである。 CVSユーザ名 パスワード Linuxのユーザ名 ユーザの追加においては再起動は必要ない。 参考 オブジェクトワークス(NRI)が公開しているガイドがとても分かりやすい。 参考:http //works.nri.co.jp/service/documents.html の「CVS on RedHat Linux 環境構築ガイド」 EclipseからCVSサーバに接続 Webアプリの開発 tomcat-pluginを利用した場合、自動的にworkフォルダ用の.cvsignoreを生成してくれるため、初回に以下のファイルをテキストとして登録するだけでとりあえず使えそう。ちなみに、classファイルについては無視するリソースに設定が見当たらないが、なぜか除外してくれる。 *.jsp .tomcatplugin EclipseとCVSサーバの対応状況 EclipseのCVSクライアントとCVSサーバの対応状況はeclipse.orgのCVS FAQで確認できる。 http //wiki.eclipse.org/index.php/CVS_FAQ#What_server_versions_of_CVS_are_supported_by_Eclipse.3F
https://w.atwiki.jp/nkym_memo/pages/126.html
二分探索木サンプルプログラム 初期化としてキー値を連番で10個挿入 オプションで探索キー値をとる すんごい適当 #include stdio.h #include stdlib.h #include unistd.h typedef struct node{ int key; int data; struct node *left; struct node *right; }NODE; NODE *root = NULL; enum{ RAND_min = 0, RAND_max = 1000 }; int Rand(int min,int max) { static int flag; if(!flag){ srand((unsigned int)time(NULL)); flag = 1; } return (max - min + 1) * (float)rand()/RAND_MAX + min; } NODE *insert(int key) { NODE **p,*new; p = root; while(*p != NULL){ if(key == (*p)- key){ return NULL; }else if(key (*p)- key){ p = (*p)- left; }else{ p = (*p)- right; } } if((new = malloc(sizeof(NODE))) == NULL){ fprintf(stderr,"Error Cannot allocate memory"); exit(1); } new- left = NULL; new- right = NULL; new- key = key; new- data = Rand(RAND_min,RAND_max); *p = new; return new; } void init() { int i; NODE *p; for(i = 0;i 10; i++){ if((p = insert(i)) == NULL){ fprintf(stderr,"Error insert"); exit(1); } printf("Node key %d data %d\n",p- key,p- data); } } NODE *search(int key) { NODE *p; p = root; while(p != NULL){ if(key == p- key){ return p; }else if(key p- key){ p = p- left; }else{ p = p- right; } } return NULL; } int main(int argc,char *argv[]) { init(); int key = atoi(argv[1]); fprintf(stdout,"check key %d\n",key); NODE *p; p = search(key); if(p != NULL){ printf("Data found key %d data %d \n",p- key,p- data); }else{ printf("Not found\n"); } return 0; } 参考文献 定本 Cプログラマのためのアルゴリズムとデータ構造(近藤 嘉雪,ソフトバンククリエイティブ,1998) コメント
https://w.atwiki.jp/cscd/pages/221.html
TH1 Mergeを使う。 まずTListに足し合わせるヒストグラムを入れてMergeする。
https://w.atwiki.jp/mtgflavortext/pages/13381.html
imageプラグインエラー ご指定のファイルが見つかりません。ファイル名を確認して、再度指定してください。 (Three Tree Rootweaver.png) 「根の迷路をうまく進むのは、何を見て、聞いて、嗅いで、感じて、味わうべきかを知っていれば簡単なことよ。」 "It's easy to find your way around the Root Maze if you know what to look, listen, smell, feel, and taste for." ブルームバロウ 【M TG Wiki】 名前